from pymongo import MongoClient
import time

def execute_in_order(cpid):
    # 连接到MongoDB（确保MongoDB服务已在本地运行）
    client = MongoClient("mongodb://192.168.168.110:27017/")

    # 选择数据库
    db = client['data']

    # 查询并按sequence字段排序
    users = db.user.find({}, {"name": 1, "sequence": 1}).sort("sequence", 1)  # 1表示升序

    print("按sequence从小到大的用户名称:")
    
    for user in users:
        name = user.get("name")
        sequence = user.get("sequence")

        print(name)  # 输出用户名称

        # 根据sequence依次执行代码
        if sequence == 1:
            # 执行特定代码
            print(f"当前用户: {name} ,正在出牌：")
            time.sleep(5)
            # 确保代码执行完成
            # 可以在这里放置其他逻辑

        elif sequence == 2:
            # 确保只有在sequence为1的代码执行完成后，才执行此代码
            print(f"当前用户: {name} ,正在出牌：")
            # 可以在这里放置其他逻辑

        elif sequence == 3:
            print(f"当前用户: {name} ,正在出牌：")
            # 依此类推

        elif sequence == 4:
            print(f"当前用户: {name} ,正在出牌：")
            # 依此类推

    # 关闭MongoDB连接
    client.close()

if __name__ == "__main__":
    cpid = 1
    execute_in_order(cpid)
